// 分类管理相关接口
import request from '@/utils/request'

/**
 * 分类分页查询
 * @param {Object} params - 查询参数 {name, page, pageSize, type}
 * @returns {Promise}
 */
export const getCategoryPage = (params) => {
  return request({
    url: '/admin/category/page',
    method: 'get',
    params
  })
}

/**
 * 新增分类
 * @param {Object} data - 分类信息 {name, sort, type}
 * @returns {Promise}
 */
export const addCategory = (data) => {
  return request({
    url: '/admin/category',
    method: 'post',
    data
  })
}

/**
 * 修改分类
 * @param {Object} data - 分类信息 {id, name, sort, type}
 * @returns {Promise}
 */
export const updateCategory = (data) => {
  return request({
    url: '/admin/category',
    method: 'put',
    data
  })
}

/**
 * 删除分类
 * @param {Number} id - 分类id
 * @returns {Promise}
 */
export const deleteCategory = (id) => {
  return request({
    url: '/admin/category',
    method: 'delete',
    params: { id }
  })
}

/**
 * 启用、禁用分类
 * @param {Number} id - 分类id
 * @param {Number} status - 状态(1:启用, 0:禁用)
 * @returns {Promise}
 */
export const updateCategoryStatus = (id, status) => {
  return request({
    url: `/admin/category/status/${status}`,
    method: 'post',
    params: { id }
  })
}

/**
 * 根据类型查询分类列表
 * @param {Number} type - 分类类型：1为菜品分类，2为套餐分类
 * @returns {Promise}
 */
export const getCategoryList = (type) => {
  return request({
    url: '/admin/category/list',
    method: 'get',
    params: { type }
  })
}